LMD GHOST
Resources
Implementations
Algorithm
1. Start at the justified block
2. Compare every child, to choose the best one
3. Comparison is based on scores
4. Scores are simple, but highly inefficient: We loop through every attestation, and then if the attestation has the child as an ancestor, it adds up to the total vote count for the child
5. The best child wins, and repeat 2 - 4 from there, until there is no children left.
6. Final winner is the head.
Optimizations
FMD GHOST
Background: Attacks on LMD GHOST
CSS'19
Solution: FMD GHOST
Adopted in Eth2: validate_on_attestation in the spec History
IMD GHOST